# vpn_key Icon

> The vpn_key icon from Material Symbols as Compose ImageVector Kotlin code, Android Vector Drawable XML and SVG.

- Library: [Material Symbols](https://composables.com/icons/icon-libraries/material-symbols.md)
- License: Apache 2.0 (full text in the [Material Symbols library page](https://composables.com/icons/icon-libraries/material-symbols.md))
- Styles: [Outlined](https://composables.com/icons/icon-libraries/material-symbols/vpn_key.md?v=outlined), [Rounded](https://composables.com/icons/icon-libraries/material-symbols/vpn_key.md?v=rounded), [Sharp](https://composables.com/icons/icon-libraries/material-symbols/vpn_key.md?v=sharp), [Outlined Filled](https://composables.com/icons/icon-libraries/material-symbols/vpn_key.md?v=outlined-filled), [Rounded Filled](https://composables.com/icons/icon-libraries/material-symbols/vpn_key.md?v=rounded-filled), [Sharp Filled](https://composables.com/icons/icon-libraries/material-symbols/vpn_key.md?v=sharp-filled)

## Compose ImageVector (Kotlin)

For Jetpack Compose and Compose Multiplatform. Download: `https://composables.com/download/icons/material-symbols/vpn_key.kt`

```kotlin
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp

val MaterialSymbolsVpnKey: ImageVector
    get() {
        if (_MaterialSymbolsVpnKey != null) return _MaterialSymbolsVpnKey!!
        
        _MaterialSymbolsVpnKey = ImageVector.Builder(
            name = "vpn_key",
            defaultWidth = 24.dp,
            defaultHeight = 24.dp,
            viewportWidth = 960f,
            viewportHeight = 960f
        ).apply {
            path(
                fill = SolidColor(Color.Black)
            ) {
                moveTo(280f, 720f)
                quadToRelative(-100f, 0f, -170f, -70f)
                reflectiveQuadTo(40f, 480f)
                quadToRelative(0f, -100f, 70f, -170f)
                reflectiveQuadToRelative(170f, -70f)
                quadToRelative(66f, 0f, 121f, 33f)
                reflectiveQuadToRelative(87f, 87f)
                horizontalLineToRelative(432f)
                verticalLineToRelative(240f)
                horizontalLineToRelative(-80f)
                verticalLineToRelative(120f)
                horizontalLineTo(600f)
                verticalLineToRelative(-120f)
                horizontalLineTo(488f)
                quadToRelative(-32f, 54f, -87f, 87f)
                reflectiveQuadToRelative(-121f, 33f)
                close()
                moveToRelative(0f, -80f)
                quadToRelative(66f, 0f, 106f, -40.5f)
                reflectiveQuadToRelative(48f, -79.5f)
                horizontalLineToRelative(246f)
                verticalLineToRelative(120f)
                horizontalLineToRelative(80f)
                verticalLineToRelative(-120f)
                horizontalLineToRelative(80f)
                verticalLineToRelative(-80f)
                horizontalLineTo(434f)
                quadToRelative(-8f, -39f, -48f, -79.5f)
                reflectiveQuadTo(280f, 320f)
                quadToRelative(-66f, 0f, -113f, 47f)
                reflectiveQuadToRelative(-47f, 113f)
                quadToRelative(0f, 66f, 47f, 113f)
                reflectiveQuadToRelative(113f, 47f)
                close()
                moveToRelative(0f, -80f)
                quadToRelative(33f, 0f, 56.5f, -23.5f)
                reflectiveQuadTo(360f, 480f)
                quadToRelative(0f, -33f, -23.5f, -56.5f)
                reflectiveQuadTo(280f, 400f)
                quadToRelative(-33f, 0f, -56.5f, 23.5f)
                reflectiveQuadTo(200f, 480f)
                quadToRelative(0f, 33f, 23.5f, 56.5f)
                reflectiveQuadTo(280f, 560f)
                close()
                moveToRelative(0f, -80f)
                close()
            }
        }.build()
        
        return _MaterialSymbolsVpnKey!!
    }

private var _MaterialSymbolsVpnKey: ImageVector? = null
```

## Android Vector Drawable (XML)

Download: `https://composables.com/download/icons/material-symbols/vpn_key.xml`

```xml
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportWidth="960"
    android:viewportHeight="960">
    <path
        android:fillColor="@android:color/black"
        android:pathData="M280,720q-100,0 -170,-70T40,480q0,-100 70,-170t170,-70q66,0 121,33t87,87h432v240h-80v120H600v-120H488q-32,54 -87,87t-121,33Zm0,-80q66,0 106,-40.5t48,-79.5h246v120h80v-120h80v-80H434q-8,-39 -48,-79.5T280,320q-66,0 -113,47t-47,113q0,66 47,113t113,47Zm0,-80q33,0 56.5,-23.5T360,480q0,-33 -23.5,-56.5T280,400q-33,0 -56.5,23.5T200,480q0,33 23.5,56.5T280,560Zm0,-80Z" />
</vector>
```

## SVG

Download: `https://composables.com/download/icons/material-symbols/vpn_key.svg`

```svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="currentColor"><path d="M280-240q-100 0-170-70T40-480q0-100 70-170t170-70q66 0 121 33t87 87h432v240h-80v120H600v-120H488q-32 54-87 87t-121 33Zm0-80q66 0 106-40.5t48-79.5h246v120h80v-120h80v-80H434q-8-39-48-79.5T280-640q-66 0-113 47t-47 113q0 66 47 113t113 47Zm0-80q33 0 56.5-23.5T360-480q0-33-23.5-56.5T280-560q-33 0-56.5 23.5T200-480q0 33 23.5 56.5T280-400Zm0-80Z"/></svg>
```
